package com.sinbader.xiaole.common.model.result;

import com.baomidou.mybatisplus.annotation.TableField;
import com.sinbader.xiaole.common.enums.Status_;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 货架
 * </p>
 *
 * @author LuoYong
 * @since 2020-04-17
 */
@Data
public class ShelfResult implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * 主键
     */
    private Long id;

    /**
     * 货架编号
     */
    private String shelvesNum;

    /**
     * 货架名称
     */
    private String shelvesName;

    /**
     * 仓库id
     */
    private Long warehouseId;

    /**
     * 所属仓库名称
     */
    private String warehouseName;

    /**
     * 商品id
     */
    private Long productId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 区域（例如A区域）
     */
    private String region;

    /**
     * 排（例如：1排，2排）
     */
    private String row;

    /**
     * 层（第几层）
     */
    private String floor;

    /**
     * 号（几排基层几号）
     */
    private String mark;

    /**
     * 状态   0: 启用 1:禁用
     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;

    /**
     * 经手人id
     */
    private Long handleUser;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 创建人id
     */
    private Long createUser;

    /**
     * 审核人id
     */
    private Long auditUser;

    /**
     * 审核时间
     */
    private Date auditTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 打印时间
     */
    private Date printTime;

    /**
     * 更新人id
     */
    private Long updateUser;

    /**
     * 默认为0,1为删除
     */
    private Integer isDelete;

    /**
     * 组织ID  （根据type 指向 supplier表 或 shop 表）
     */
    private Long orgId;

    /**
     * 用户类型 (supplier xiaole shop superAdmin common)
     */
    private String userType;

    public String getStatuStr(){
        if (this.getStatus() != null) {
            return Status_.Status.getInstance(this.getStatus()).getName();
        }
        return null;
    }

}
